{{- $currentNode := . }}
{{- $showvisitedlinks := .Site.Params.showVisitedLinks -}}
{{- $topSection := index .Site.Sections 0 }}
{{- range $topSection.Sections }}
{{- template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks}}
{{- end}}

<!-- templates -->
{{- define "section-tree-nav" }}
{{- $showvisitedlinks := .showvisitedlinks }}
{{- $currentNode := .currentnode }}
{{- with .sect}}
{{- if and .IsSection (or (not .Params.hidden) $.showhidden)}}
{{- $numberOfPages := (add (len .Pages) (len .Sections)) }}
{{- safeHTML .Params.head}}
<li data-nav-id="{{.Permalink}}" class="dd-item
        {{- if .IsAncestor $currentNode}} parent{{end}}
        {{- if eq .Permalink $currentNode.Permalink}} active{{end}}
        {{- if .Params.alwaysopen}} alwaysopen{{end -}}
        {{- if ne $numberOfPages 0 }} haschildren{{end}}
        ">
  <div class="card-header bg-blue-medium-light c-px-5 c-py-2">
    <a href="{{ .RelPermalink}}">
      {{safeHTML .Params.Pre}}{{or .Params.menuTitle .LinkTitle .Title}}{{safeHTML .Params.Post}}
    </a>

    {{- if ne $numberOfPages 0 }}
    {{- if or (.IsAncestor $currentNode) (.Params.alwaysopen) }}
    <i class="fa fa-angle-down fa-lg category-icon"></i>
    {{- else -}}
    <i class="fa fa-angle-right fa-lg category-icon"></i>
    {{- end}}
    {{- end}}

    {{- if $showvisitedlinks}}<i class="fa fa-circle-thin read-icon"></i>{{end}}
  </div>
  {{- if ne $numberOfPages 0 }}
  <ul>
    {{- .Scratch.Set "pages" .Pages }}
    {{- if .Sections}}
    {{- .Scratch.Set "pages" (.Pages | union .Sections) }}
    {{- end}}
    {{- $pages := (.Scratch.Get "pages") }}

    {{- if eq .Site.Params.ordersectionsby "title"}}
    {{- range $pages.ByTitle }}
    {{- if and .Params.hidden (not $.showhidden) }}
    {{- else}}
    {{- template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks }}
    {{- end}}
    {{- end}}
    {{- else}}
    {{- range $pages.ByWeight }}
    {{- if and .Params.hidden (not $.showhidden) }}
    {{- else}}
    {{- template "section-tree-nav" dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks }}
    {{- end}}
    {{- end}}
    {{- end}}
  </ul>
  {{- end}}
</li>
{{- else}}
{{- if not .Params.Hidden }}
<li data-nav-id="{{.Permalink}}" class="dd-item
     {{- if eq .Permalink $currentNode.Permalink}} active{{end -}}
      ">
  <div class="card-header bg-blue-medium-light c-px-5 c-py-2">
    <a href="{{ .RelPermalink}}">
      {{safeHTML .Params.Pre}}{{or .Params.menuTitle .LinkTitle .Title}}{{safeHTML .Params.Post}}
    </a>
    {{- if $showvisitedlinks}}<i class="fa fa-circle-thin read-icon"></i>{{end}}
  </div>
</li>
{{- end}}
{{- end}}
{{- end}}
{{- end}}